SF4 Cameraman v0.5

Author: Lullius
Homepage: www.slitherware.com




------------------------------------------------------------------------------------------------------
CHANGELOG (v0.5 - 20th, aug, 2014)
Added FPS style camera movement. This should make it easier to move around in the game.
Camera Lock-On function changed. You can now circle the players with the mouse. Check the P1 box to angle the camera 
at P1, or the P2 box to angle the camera at P2. If both, or none of the boxes are checked, the camera will point at 
a place in between the two players.
Added the Speed slider. This will alter the speed of the characters. 0 (all the way to the left) is completely still,
1 is normal, and you can turn it all the way up to 10 (all the way to the right). Some moves will reset it to 1.
Small bugfixes here and there. Moving the camera while paused should work again now, although it is a little glitchy 
(the camera will sometimes stutter. I'm not feeling well at the moment, so I'll have to look at it next time).

(Invisible changes)
I'm in the Vector Matrix. Code is a mess, needs a cleanup. Currently using SlimDX for vector stuff.
------------------------------------------------------------------------------------------------------
CHANGELOG (v0.44 - 10th, aug, 2014)
Added the "Disable Camera Shake" feature as requested. This will prevent the camera from shaking when certain things 
happen in the game.

(Invisible changes)
Added new function to JMP cam shake function in SF4.
------------------------------------------------------------------------------------------------------
CHANGELOG (v0.43 - 10th, aug, 2014)
Updated Cameraman to support USF4.
The Pause function no longer works after the user has manually paused the game (even once!). To get the pause function to
work again after the user has paused, he will need to re-enter the stage. I hope this will fix some of the crashes.
Changed name from "SF4 Camera Man" to "SF4 Cameraman". I've known about this mistake for a while, about time I changed it.

(Invisible changes)
Changed some addresses.
------------------------------------------------------------------------------------------------------
CHANGELOG (v0.42 - 1st, jun, 2014)
Updated Camera Man to support the new Steamworks (ver. 2014) of SSFIVAE.
This version does no longer supports the old Steam version or the GFWL version. If you have the GFWL version you 
can register your key on Steam and get the newest version of SF4.

(Invisible changes)
Removal of unneeded code.
------------------------------------------------------------------------------------------------------
CHANGELOG (v0.4 - 18th, dec, 2013)
Added the Static Camera function, hopefully this will help in getting consistent angles.
Nothing else new this time, sorry.

(Invisible changes...)
Combined camera angle update functions.
------------------------------------------------------------------------------------------------------
CHANGELOG (v0.3 - 9th, dec, 2013)
Added the possibility to disable the special animation camera used in ultras and some other moves.
Added the pause function. This pauses the game without showing the pause screen, and does not lock the 
camera, so you are still free to move it around.
Added the next frame function. While the pause functin is active, this will unpause the game for 1 frame, 
then pause it again, letting you examine the game frame by frame.
Added the autopause function. Automatically runs the pause function on the next move the character does. 
With this, the pause function and the next frame function you can see every frame of any move.

(Invisible changes...)
Now using the nop-function a lot, along with writebytes to jmp game memory.
Wrote PauseGame function.
Getting harder and harder to add compatibility to the steam version of the game.
Added lots of new offsets.
Rewrote some functions.
Added a lot of comments.
Using waitframes "stolen" from SF4SO to wait 1 frame in nextframe.
Details updated with a lot of new functions.
A lot of other things I've forgotten. The code needs a big cleanup.
------------------------------------------------------------------------------------------------------
CHANGELOG (v0.2 - 7th, dec, 2013)
Added locks on camera and angle.
Added offsets to locks.
SF4CM should now work on slower computers as well.
Added a sensitivity setting for the keyboard and mouse.

(Invisible changes...)
Too much to write down...
------------------------------------------------------------------------------------------------------

What is SF4 Camera Man?
It's a tool to move the camera around while in a stage in SF4.


Why would anybody want that?
I don't know. To make some cool videos, or take som screenshots from unusual angles?


Okay, but how do I use it?
I, J, K and L moves the camera around.
O and U moves the camera up and down.
8 and 9 zooms in and out.
Y and P rolls the camera.
Use the mouse to change the angle.

TAB Activates the pause function.
CTRL+TAB Skips to the next frame while paused.
CTRL+1 Activates the autopause function for P1
CTRL+1 Activated the autopause function for P2


Why are the shadows/textures glitching?
I don't know for sure. It may be that the camera emits light, and is not supposed to be moved in this way.
It may be that the game is trying to optimize rendering by not rendering stuff you wouldn't normally see.
It may also be something completely different.


Can I get banned for using this?
PROBABLY!I take no responsibility if you get banned! You can watch your replays even if you are offline 
by going to "PLAYER DATA". You'll still need to log in, but you can log in using offline mode.


Why does SF4 crash sometimes?
I don't know. It probably has to do with the memory editing SF4CM does, but it's hard to find out exactly 
what it is and therefore it's hard for me to fix. I think maybe this was fixed in v0.43. Crashes may still 
occur though.


What is the "Disable Cinematic Camera"-function?
It disables the camera used by ultras and some other moves. This way you won't lose control of the camera 
during those moves. It also lets you see the opening and finishing animations from any angle you want.


What is the "Disable Camera Shake"-function?
Certain moves in the game makes the camera shake. This function will remove that shake.


What does the "Pause"-button do?
It pauses the game without showing the pause screen. It does not freeze the camera like the normal pause 
does (but sometimes it happens anyway, just unpause and the camera will unfreeze). Everything else is the 
same as the normal pause in SF4. It can be activated at any time by pressing the TAB-button.


What does the "Next Frame"-button do?
This only works while paused! The button will unpause the game for 1 frame, then pause it again. That way 
you can watch the game frame by frame. "Next Frame" might skip more than 1 frame on slow computers. You 
can go to the next frame any time while paused by pressing CTRL+TAB.


What does the AutoPause do?
It automatically pauses the game when the character changes action. If you stand and do nothing and press 
the autopause, nothing will happen. If you hit any buttons, the game will pause. You can use this with 
DP-motions as well. Just start the autopause while you are crouching (use the shortcuts CTRL+1 and CTRL+2), 
and do DF,D,DF+Punch. The game will freeze when the DP-move comes out. This works because while you are crouching 
and pressing DF,D,DF, your character is still only crouching, and no action has changed, until you hit the punch 
button. Then the action will change from crouching to DP. You can activate AutoPause at any time by pressing 
CTRL+1 or CTRL+2.


What is Camera Lock and Angle Lock?
Camera Lock locks the position of the camera. Angle Lock locks where the camera is pointed. If you lock the camera 
to Player 1 head, and the angle to Player 2 head, you will look "out of" Player 1 directly at Player 2.


What's the difference between Player 1 and Player 1 Head?
Player 1 is the base of where Player 1 is standing. It's at his feet. 
Player 1 Head is player 1's head. It follows his head while you stand still (moves up and down), and goes lower 
if you crouch.


What are Offsets?
Offsets are used while you have the camera lock on to give you new and interesting angles. If you lock on to 
Player 1, and set X to -3 and Y to 2, you will be behind and above the player. You can use both positive and 
negative values as well as "." (so -3.15 is okay to write). X is from left to right (when in normal view), Y 
is up and down, and Z is in and out.


What is Camera Lock-On?
Camera lock-on (not to be confused with Camera Lock!) locks where the camera is pointed while you move the camera.
It defaults to pointing in the middle of the two players, but you can lock the camera on to P1 or P2 if you want. 
You can use the mouse while in Camera Lock-On to move the camera around the characters. Use "I" and "K" to move 
the camera in and out. You can't use "J" and "L" while in this mode, try using the mouse instead.


What is Static Camera?
Static Camera lets you set the camera position and angle any way you want. It will stay in that position until you 
switch Static Camera off.


What are the speed sliders for?
They control the speed of which the characters are moving. 0, all the way to the left, makes the character stay still, 
10, all the way to the right, makes the character move really fast. The default speed is 1.


What are the limits of SF4CM?
You can't blur the camera (there is a blur function in the game, but you can't control it).
You can't shake the camera (there is a shake function in the game, but you can't control it).
It sometimes crashes SF4 (this should be fixed now I think). 
It might skip exstra frames when you use the "Next Frame" function.


IMPORTANT:
SF4CM will only work with the newest version of USF4 out today (20th, aug, 2014).
If SF4 crashes, please let me know what you did before the crash so I can try to fix it.